124 research outputs found

    ACL2 Verification of Simplicial Degeneracy Programs in the Kenzo System

    Get PDF
    Kenzo is a Computer Algebra system devoted to Algebraic Topology, and written in the Common Lisp programming language. It is a descendant of a previous system called EAT (for Effective Algebraic Topology). Kenzo shows a much better performance than EAT due, among other reasons, to a smart encoding of degeneracy lists as integers. In this paper, we give a complete automated proof of the correctness of this encoding used in Kenzo. The proof is carried out using ACL2, a system for proving properties of programs written in (a subset of) Common Lisp. The most interesting idea, from a methodological point of view, is our use of EAT to build a model on which the verification is carried out. Thus, EAT, which is logically simpler but less efficient than Kenzo, acts as a mathematical model and then Kenzo is formally verified against it.Ministerio de Educación y Ciencia MTM2006-0651

    A verified Common Lisp implementation of Buchberger's algorithm in ACL2

    Get PDF
    In this article, we present the formal verification of a Common Lisp implementation of Buchberger's algorithm for computing Gröbner bases of polynomial ideals. This work is carried out in ACL2, a system which provides an integrated environment where programming (in a pure functional subset of Common Lisp) and formal verification of programs, with the assistance of a theorem prover, are possible. Our implementation is written in a real programming language and it is directly executable within the ACL2 system or any compliant Common Lisp system. We provide here snippets of real verified code, discuss the formalization details in depth, and present quantitative data about the proof effort

    Verification in ACL2 of a Generic Framework to Synthesize SAT–Provers

    Get PDF
    We present in this paper an application of the ACL2 system to reason about propositional satisfiability provers. For that purpose, we present a framework where we define a generic transformation based SAT–prover, and we show how this generic framework can be formalized in the ACL2 logic, making a formal proof of its termination, soundness and completeness. This generic framework can be instantiated to obtain a number of verified and executable SAT–provers in ACL2, and this can be done in an automatized way. Three case studies are considered: semantic tableaux, sequent and Davis–Putnam methods.Ministerio de Ciencia y Tecnología TIC2000-1368-C03-0

    Formal Verification of Molecular Computational Models in ACL2: A Case Study

    Get PDF
    Theorem proving is a classical AI problem with a broad range of applications. Since its complexity is exponential in the size of the problem, many methods to parallelize the process has been proposed. One of these approaches is based on the massive parallelism of molecular reactions. ACL2 is an automated theorem prover especially adequate for algorithm verification. In this paper we present an ACL2 formalization of a molecular computational model: Adleman’s restricted model. As an application of this model, an implementation of Lipton’s experiment solving SAT is described. We use ACL2 to make a formal proof of the completeness and soundness properties of this implementation.Ministerio de Ciencia y Tecnología TIC2000-1368-C03-0

    Formal verification of a generic framework to synthesize SAT-provers

    Get PDF
    We present in this paper an application of the ACL2 system to generate and reason about propositional satis ability provers. For that purpose, we develop a framework where we de ne a generic SAT-prover based on transformation rules, and we formalize this generic framework in the ACL2 logic, carrying out a formal proof of its termination, soundness and completeness. This generic framework can be instantiated to obtain a number of veri ed and executable SAT-provers in ACL2, and this can be done in an automated way. Three instantiations of the generic framework are considered: semantic tableaux, sequent and Davis-Putnam-Logeman-Loveland methods.Ministerio de Ciencia y Tecnología TIC2000-1368-C03-0

    Formal Correctness of a Quadratic Unification Algorithm

    Get PDF
    We present a case study using ACL2 [5] to verify a non-trivial algorithm that uses efficient data structures. The algorithm receives as input two first-order terms and it returns a most general unifier of these terms if they are unifiable, failure otherwise. The verified implementation stores terms as directed acyclic graphs by means of a pointer structure. Its time complexity is O(n2) and its space complexity is O(n), and it can be executed in ACL2 at a speed comparable to a similar C implementation. We report the main issues encountered to achieve this formally verified implementation

    Constructing Formally Verified Reasoners for the ALC Description Logic

    Get PDF
    Description Logics are a family of logics used to represent and reason about conceptual and terminological knowledge. Recently, its importance has been increased since they are used as a basis for the Ontology Web Language (OWL) used for the Semantic Web. In previous work, we have developed in PVS a generic framework for reasoning in the ALC description logic, proving its termination, soundness and completeness. In this paper we present the construction, from the generic framework, of a formally verified generic tableau– based algorithm for checking satisfiability of ALC –concepts. We do it using a methodology of refinements to transfer the properties from the framework to the algorithm. We also obtain some verified reasoners from the algorithm by a process of instantiation.Ministerio de Educación y Ciencia TIN2004–0388

    Verified Computer Algebra in ACL2 (Gröbner Bases Computation)

    Get PDF
    In this paper, we present the formal verification of a Common Lisp implementation of Buchberger’s algorithm for computing Gröbner bases of polynomial ideals. This work is carried out in the Acl2 system and shows how verified Computer Algebra can be achieved in an executable logic

    Proof Pearl: a Formal Proof of Higman’s Lemma in ACL2

    Get PDF
    Higman’s lemma is an important result in infinitary combinatorics, which has been formalized in several theorem provers. In this paper we present a formalization and proof of Higman’s Lemma in the ACL2 theorem prover. Our formalization is based on a proof by Murthy and Russell, where the key termination argument is justified by the multiset relation induced by a well-founded relation. To our knowledge, this is the first mechanization of this proof.Ministerio de Ciencia e Innovación MTM2009-13842-C02-0

    Análisis de la tasa de abandono en un Centro con varios Grados en Ingeniería Informática

    Get PDF
    En este trabajo se muestra el análisis realizado del impacto que sobre la tasa de abandono tiene el cambio de estudios entre los tres Grados en Ingeniería Informática que se imparten en un Centro concreto. Dicho análisis ha sido llevado a cabo por el Equipo de Dirección del Centro a instancia de los informes realizados tras las visitas para la renovación de la acreditación de dichos títulos. Las principales conclusiones a las que hemos llegado son: i) el cambio de estudios entre Grados en Informática siempre tiene un efecto negativo sobre la tasa de abandono, oscilando este entre el 3% y el 20 %; ii) dicho cambio de estudios puede responder a cuestiones académicas en algunos casos, pero también se apuntan cuestiones económicas por el ahorro que puede llegar a suponer; iii) aproximadamente un tercio de nuestros estudiantes abandona los estudios en Ingeniería Informática; iv) la tasa de abandono a lo largo de los últimos 5 años se ha mantenido acorde con lo establecido en las memorias de verificación y conforme a la media nacional en la rama de conocimiento de Ingeniería y Arquitectura; v) los sistemas de indicadores definidos por los distintos sistemas de garantía de calidad de los Títulos en ocasiones no son homogéneos, lo que dificulta realizar cualquier tipo de análisis.This paper carries out an analysis on the impact caused by the possibility of moving from one degree to another, in a School of Informatics Engineering. That analysis has been carried out by the executive board of the School, at the request of the reports issued for the renewal of the accreditation of the studies. The main conclusions are: i) changing of studies always has a negative impact on the dropout rate, ranging from 3% to 20% ; ii) those changes can be sometimes due to academic reasons, but also to economical reasons since sometimes imply economic savings; iii) approximately one third of our students drop out of their studies of Informatics Engineering; iv) our dropout rate in the last five years has been compliant with the national average in Engineering and Architecture; v) quality indicators systems for degree studies are sometimes not uniform, making difficult an appropriate analysis
    • …
    corecore